CentOS 5
Sponsored Link

Apache Log Analyzer - AWstats
2011/06/25
 
Install Apache log analizer, AWstats.
[1] Install AWstats
[root@www ~]#
yum --enablerepo=dag -y install awstats
 
# install from DAG
[root@www ~]#
cp /etc/awstats/awstats.model.conf /etc/awstats/awstats.www.srv.world.conf

[root@www ~]#
vi /etc/awstats/awstats.www.srv.world.conf
# line 122: change

# if your config for log format in httpd.conf is 'combined' Set here '1'

# If log-config is 'common' set here '4', but in this case, some informations can't be get (browser info and so on)

LogFormat=
1
# line 153, set your hostname

SiteDomain="
www.srv.world
"
# line 168: set IP address you'd like to exclude

HostAliases="
localhost 127.0.0.1 REGEX[server\.world$] REGEX[^10\.0\.0\.]
"
[root@www ~]#
vi /etc/httpd/conf.d/awstats.conf
Alias /awstats/icon/ /var/www/awstats/icon/
# add Alias

Alias /report /var/www/awstats/

ScriptAlias /awstats/ /var/www/awstats/
<Directory "/var/www/awstats">
    DirectoryIndex awstats.pl
    Options ExecCGI
    order deny,allow
    deny from all
    allow from 127.0.0.1
10.0.0.0/24
# IP address you allow

</Directory>
[root@www ~]#
/etc/rc.d/init.d/httpd restart

Stopping httpd:
[  OK  ]

Starting httpd:
[  OK  ]
# generate reports

[root@www ~]#
/var/www/awstats/awstats.pl -config=www.srv.world -update

Create/Update database for config "/etc/awstats/awstats.www.srv.world.conf" by AWStats version 7.0 (build 1.971)
From data in log file "/var/log/httpd/access_log"...
Phase 1 : First bypass old records, searching new record...
Searching new records from beginning of log file...
Phase 2 : Now process new records (Flush history on disk after 20000 hosts)...
Jumped lines in file: 0
Parsed lines in file: 11
Found 0 dropped records,
Found 0 comments,
Found 0 blank records,
Found 0 corrupted records,
Found 0 old records,
Found 11 new qualified records.
# generate HTML from reports

[root@www ~]#
/var/www/awstats/awstats.pl -config=www.srv.world -output -staticlink > /var/www/awstats/index.html
# change cron's setting

[root@www ~]#
vi /etc/cron.hourly/00awstats
#!/bin/bash
if [ -f /var/log/httpd/access_log ] ; then
# make it comment

#
exec /usr/bin/awstats_updateall.pl now -configdir="/etc/awstats" -awstatsprog="/var/www/awstats/awstats.pl" > /dev/null
# add

/var/www/awstats/awstats.pl -config=www.srv.world -update > /dev/null
/var/www/awstats/awstats.pl -config=www.srv.world -output -staticlink > /var/www/awstats/index.html

fi
exit 0
[2] Access to 'http://(your server's name or IP address/)/report/index.html', then follwing sacreen is shown and it's possible to see httpd's log.
 
Tweet